const express = require("express");
const router = express.Router();
const chatController = require("../controllers/chatController");
const { verifyVisitorToken } = require("../middlewares/authMiddleware");
const checkServiceAccess = require("../middlewares/serviceAccessMiddleware");

router.post("/test-websocket", chatController.testWebsocketNotify);
// 应用认证中间件到所有聊天路由
router.use(verifyVisitorToken);

// 聊天历史列表相关路由
router.get("/Get-ChatHistory-list", chatController.getChatHistoryList); //获取聊天历史列表
router.post("/Post-ChatHistory-list", chatController.saveChatHistoryList); //更新历史列表（可以在前端中获取最后一条消息的内容）

// 特定AI的聊天记录路由
router.get("/ChatHistoryMessage", chatController.getChatHistory); //获取和AI的对话内容

// 更新聊天内容（更新和AI的对话内容）
router.post("/UpData-ChatHistoryMessage", chatController.saveChatHistory); //更新和AI的对话内容

router.post("/Delete-ChatHistory", chatController.deleteChatHistory); //删除和AI的对话内容
router.post("/Refresh-ChatHistory", chatController.refreshChatHistory); //刷新聊天记录（只保留前两条消息）
router.post("/Edit-ChatStatus", chatController.editChatStatus); // 编辑指定消息的状态

// 向python服务器提供固定格式的聊天记录（上下文）
// router.post("/GetChatHistoryPython", chatController.GetChatHistoryPython); //更新历史列表（可以在前端中获取最后一条消息的内容）

// 数据同步路由
router.post("/sync-all", chatController.syncAllData);
router.get("/export-all", chatController.getAllChatData);

module.exports = router;
